package com.ruoyi.tsjData.service.impl;

import java.util.List;

import com.ruoyi.common.config.RuoYiConfig;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.ProcessPictureUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.tsjData.domain.result.DataTshjPbResult;
import com.ruoyi.tsjData.mapper.DataTshjPbResultMapper;
import com.ruoyi.tsjData.service.IDataTshjPbResultService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;


/**
 * 提升机-偏摆测试结果Service业务层处理
 * 
 * @author ruoyi
 * @date 2023-11-07
 */
@Service
public class DataTshjPbResultServiceImpl implements IDataTshjPbResultService
{
    @Autowired(required = false)
    private DataTshjPbResultMapper dataTshjPbResultMapper;

    /**
     * 查询提升机-偏摆测试结果
     * 
     * @param pbId 提升机-偏摆测试结果主键
     * @return 提升机-偏摆测试结果
     */
    @Override
    public DataTshjPbResult selectDataTshjPbResultByPbId(Long pbId)
    {
        return dataTshjPbResultMapper.selectDataTshjPbResultByPbId(pbId);
    }

    /**
     * 查询提升机-偏摆测试结果列表
     * 
     * @param dataTshjPbResult 提升机-偏摆测试结果
     * @return 提升机-偏摆测试结果
     */
    @Override
    public List<DataTshjPbResult> selectDataTshjPbResultList(DataTshjPbResult dataTshjPbResult)
    {
        return dataTshjPbResultMapper.selectDataTshjPbResultList(dataTshjPbResult);
    }

    /**
     * 任务id查询偏摆结果
     * @param dataTaskId
     * @return
     */
    @Override
    public List<DataTshjPbResult> selectDataTshjPbResultByDataTaskId(Long dataTaskId, Long dataResultId) {
        return dataTshjPbResultMapper.selectDataTshjPbResultByDataTaskId(dataTaskId, dataResultId);
    }

    /**
     * 新增提升机-偏摆测试结果
     * 
     * @param dataTshjPbResult 提升机-偏摆测试结果
     * @return 结果
     */
    @Override
    public int insertDataTshjPbResult(DataTshjPbResult dataTshjPbResult)
    {
        dataTshjPbResult.setCreateTime(DateUtils.getNowDate());
        if(StringUtils.isNotEmpty(dataTshjPbResult.getPdSvg())) {
            //偏摆图路径
            String rootPath = RuoYiConfig.getProfile() + RuoYiConfig.getChartPath() + "/";
            String pbImg = System.currentTimeMillis() + "-偏摆图.png";
            //svg转png
            ProcessPictureUtils.convertToPng(dataTshjPbResult.getPdSvg(), rootPath + dataTshjPbResult.getDataTaskId() + "/" + pbImg);
            dataTshjPbResult.setPdImg("/profile/chartPath/" + dataTshjPbResult.getDataTaskId() + "/" + pbImg);
        }
        return dataTshjPbResultMapper.insertDataTshjPbResult(dataTshjPbResult);
    }

    /**
     * 修改提升机-偏摆测试结果
     * 
     * @param dataTshjPbResult 提升机-偏摆测试结果
     * @return 结果
     */
    @Override
    public int updateDataTshjPbResult(DataTshjPbResult dataTshjPbResult)
    {
        dataTshjPbResult.setUpdateTime(DateUtils.getNowDate());
        return dataTshjPbResultMapper.updateDataTshjPbResult(dataTshjPbResult);
    }

    /**
     * 批量删除提升机-偏摆测试结果
     * 
     * @param pbIds 需要删除的提升机-偏摆测试结果主键
     * @return 结果
     */
    @Override
    public int deleteDataTshjPbResultByPbIds(Long[] pbIds)
    {
        return dataTshjPbResultMapper.deleteDataTshjPbResultByPbIds(pbIds);
    }

    /**
     * 删除提升机-偏摆测试结果信息
     * 
     * @param pbId 提升机-偏摆测试结果主键
     * @return 结果
     */
    @Override
    public int deleteDataTshjPbResultByPbId(Long pbId)
    {
        return dataTshjPbResultMapper.deleteDataTshjPbResultByPbId(pbId);
    }
}
